Polylogarithmic Fully Retroactive Priority Queues via Hierarchical Checkpointing

نویسندگان

  • Erik D. Demaine
  • Tim Kaler
  • Quanquan C. Liu
  • Aaron Sidford
  • Adam Yedidia
چکیده

Since the introduction of retroactive data structures at SODA 2004 [1], a major open question has been the difference between partial retroactivity (where updates can be made in the past) and full retroactivity (where queries can also be made in the past). In particular, for priority queues, partial retroactivity is possible in O(logm) time per operation on a m-operation timeline, but the best previously known fully retroactive priority queue has cost Θ( √ m logm) time per operation. We address this open problem by providing a general logarithmicoverhead transformation from partial to full retroactivity called “hierarchical checkpointing,” provided that the given data structure is “time-fusible” (multiple structures with disjoint timespans can be fused into a timeline supporting queries of the present). As an application, we construct a fully retroactive priority queue which can insert an element, delete the minimum element, and find the minimum element, at any point in time, in O(log m) amortized time per update and O(log m log logm) time per query, using O(m logm) space. Our data structure also supports the operation of determining the time at which an element was deleted in O(log m) time.

برای دانلود رایگان متن کامل این مقاله و بیش از 32 میلیون مقاله دیگر ابتدا ثبت نام کنید

ثبت نام

اگر عضو سایت هستید لطفا وارد حساب کاربری خود شوید

منابع مشابه

SprayLists: Provably Correct Approximate Priority Queues in a Shared Memory Setting

An important data structure well understood in sequential settings is the priority queue, which supports the following three operations: insert(x), which inserts an item with priority x, delete(x), which deletes the item with priority x, and deleteMin, which deletes and returns the item with lowest priority. Fibonacci heaps [4] support deleteMin and delete in amortized logarithmic time, and ins...

متن کامل

Efficient, Oblivious Data Structures for MPC

We present oblivious implementations of several data structures for secure multiparty computation (MPC) such as arrays, dictionaries, and priority queues. The resulting oblivious data structures have only polylogarithmic overhead compared with their classical counterparts. To achieve this, we give secure multiparty protocols for the ORAM of Shi et al. (Asiacrypt ‘11) and the Path ORAM scheme of...

متن کامل

Revisiting priority queues for image analysis

Many algorithms in image analysis require a priority queue, a data structure that holds pointers to pixels in the image, and which allows efficiently finding the pixel in the queue with the highest priority. However, very few articles describing such image analysis algorithms specify which implementation of the priority queue was used. Many assessments of priority queues can be found in the lit...

متن کامل

Hierarchical Channels and the Relative Speed

FIFO communication is expensive to support. It is also quite restrictive for several applications. In this paper, we study the concept of relative speed of messages and a hierarchy of such speeds which results in a hierarchical channel . In hierarchical channels messages sent at lower levels of the hierarchy cannot be overtaken by message sent at a higher level. But lower level messages can ove...

متن کامل

Hierarchical Channels and the Relative Speed of Messages 1

FIFO communication is expensive to support. It is also quite restrictive for several applications. In this paper, we study the concept of relative speed of messages and a hierarchy of such speeds which results in a hierarchical channel . In hierarchical channels messages sent at lower levels of the hierarchy cannot be overtaken by message sent at a higher level. But lower level messages can ove...

متن کامل

ذخیره در منابع من


  با ذخیره ی این منبع در منابع من، دسترسی به آن را برای استفاده های بعدی آسان تر کنید

عنوان ژورنال:

دوره   شماره 

صفحات  -

تاریخ انتشار 2015